/*
  root element for the scrollable.
  when scrolling occurs this element stays still.
  */
.scrollable {

    /* required settings */
    position:relative;
    overflow:hidden;
    width: 80%;
    height:100px;
	white-space: nowrap;
    /* custom decorations */
    border:1px solid #ccc;
    background:url(/media/img/gradient/h300.png) repeat-x;
}

/*
   root element for scrollable items. Must be absolutely positioned
   and it should have a extremely large width to accomodate scrollable
   items.  it's enough that you set the width and height for the root
   element and not for this element.
*/
.scrollable .items {
    /* this cannot be too large */
    width:500%;
    position:absolute;
    clear:both;
    white-space: nowrap;
}

.items div {
    float:left;
    width:25%;
    white-space: nowrap;
}

/* single scrollable item */
.scrollable img {
    float:left;
    margin:1% 1% 2% 1%;
    background-color:#fff;
    padding:2px;
    border:1px solid #ccc;
    width:17%;
    height:60%;
	white-space: nowrap;
    -moz-border-radius:4px;
    -webkit-border-radius:4px;
}

/* active item */
.scrollable .active {
    border:2px solid #000;
    position:relative;
    cursor:default;
    white-space: nowrap;
}


/* this makes it possible to add next button beside scrollable */
.scrollable {
    float:left;
    white-space: nowrap;
}

/* prev, next, prevPage and nextPage buttons */
a.browse {
    background:url(../img/hori_large.png) no-repeat;
    display:block;
    width:30px;
    height:30px;
    float:left;
    margin:40px 10px;
    cursor:pointer;
    font-size:1px;
	white-space: nowrap;
}

/* right */
a.right { background-position: 0 -30px; clear:right; margin-right: 0px;}
a.right:hover { background-position:-30px -30px; }
a.right:active { background-position:-60px -30px; }


/* left */
a.left { margin-left: 0px; }
a.left:hover  { background-position:-30px 0; }
a.left:active { background-position:-60px 0; }

/* up and down */
a.up, a.down  {
    background:url(/media/img/scrollable/arrow/vert_large.png) no-repeat;
    float: none;
    margin: 10px 50px;
}

/* up */
a.up:hover { background-position:-30px 0; }
a.up:active { background-position:-60px 0; }

/* down */
a.down { background-position: 0 -30px; }
a.down:hover { background-position:-30px -30px; }
a.down:active { background-position:-60px -30px; }


/* disabled navigational button */
a.disabled {
    visibility:hidden !important;
}

#image_wrap {
    /* dimensions */
    width:85%;
    padding:2%;
    margin: 5%;

    /* centered */
    text-align:center;

    /* some "skinning" */
    background-color:#efefef;
    border:2px solid #fff;
    outline:1px solid #ddd;
    -moz-ouline-radius:4px;
}